package shelly.basic.class01;

import shelly.Util;

import java.util.Arrays;

/**
 * @author: Shelly
 * @create: 2023-01-13 20:53:07
 * @describe: 选择排序：找到最小值，再交换
 */
public class Code01_SelectionSort {
    public static void sort(int[] arr){
        if (arr.length == 0 || arr.length == 1){
            return;
        }
        // 0 n-1  找到最小值，在哪，放到0位置上
        // 1 n-1  找到最小值，在哪，放到1 位置上
        // 2 n-1  找到最小值，在哪，放到2 位置上
        // ...
        // n-1
        for (int i = 0;i < arr.length;i++){
            int min = i;
            for (int j = i+1;j < arr.length;j++){
                if (arr[min] > arr[j] ){
                    min = j;
                }
            }
            Util.swap(arr,i,min);
        }
    }



    public static void main(String[] args) {
        int[] arr = {18,3,6,3,9,43,23,12,6,87};
        sort(arr);
        System.out.println(Arrays.toString(arr));
    }
}
